1. Field of Invention
This invention relates generally to computing systems. Specifically, a set of interfaces for adding support for general file attributes with an orthogonal namespace of file attributes is disclosed.
2. Description of Related Art
The UNIX file system is hierarchical in that it resembles a tree structure. The tree is anchored at a place called the root, designated by a slash xe2x80x9c/xe2x80x9d. Every item in the UNIX file system tree is either a file, or a directory that is like a file folder that can contain files, and other directories. A directory contained within another is called the child of the other. A directory in the files system tree may have many children, but it can only have one parent. UNIX files can have attributes (as represented in FIG. 1 as UFS attribute namespace 100) such as size, permissions, create time, etc associated with it. For example, every file and directory has associated with it ownership, and access permissions for which one is able to specify those to whom the permissions apply. Permissions are defined as read, write, and execute. Those to whom the permissions apply are the user who owns the file, those who are in the same group as the owner, and all others. In order to examine the various attributes of a particular UNIX file or directory (such as access permissions 102) included in the UFS attribute space 100, a UNIX attribute API 104 is used.
Unfortunately, however, if the API 104 was used to examine, for example, the attributes for a UDFS file or a PCFS file, only those UDFS file attributes (i.e., region I) or those PCFS attributes (i.e., region III) included in the UNIX attribute space 100 would be exposed by the API 104. The UDFS or PCFS attributes outside the UNIX attribute space (i.e. regions II and IV, respectively) and the information associated therewith would lost.
Therefore what is desired is an attribute model and associated API, method, and system for providing an extensible set of file attributes.
According to the present invention, methods, apparatus, and systems are disclosed for providing a cascadable state machine for broadcast content is disclosed.
In one embodiment, a method a exposing a value of a selected extended attribute in an extended attribute namespace, wherein the extended attribute is associated with a node in a directory tree namespace that is orthogonal to the extended attribute namespace is disclosed. If a mapping for a selected extended attribute exists does not exist, then in the extended attribute namespace, a virtual directory is created, a virtual file is created, and the virtual file is associated with the virtual directory. The content of the virtual file is mapped to the selected extended attribute and a selected extended attribute operation is performed. The value of the selected extended attribute is then exposed.
In another embodiment, an apparatus for a exposing a value of a selected extended attribute in an extended attribute namespace, wherein the extended attribute is associated with a node in a directory tree namespace that is orthogonal to the extended attribute namespace is disclosed.
In still another embodiment, computer program product for exposing a value of a selected extended attribute in an extended attribute namespace, wherein the extended attribute is associated with a node in a directory tree namespace that is orthogonal to the extended attribute namespace is disclosed.